|
AAsterlund wrote: The most confusing parts here are "last_32bits_of", "32nd_bit_of" and "last_31bits_of". I don't really understand what that mean at all. I am totaly lost here!!
I would guess that these operations result in a number longer than 32 bits. Probably 64 bits. You can use bitwise and shift operators and/or casting to extract a range of bits from these numbers. I think to implement this correctly you would need to know if the numbers are stored in big or little endian and possibly adjust the algorithm according for your platform
System.IO.Path.IsPathRooted() does not behave as I would expect
|
|
|
|
|
AAsterlund wrote: MT[ i ] := last_32bits_of((69069 * MT[i-1]) + 1)
MT[i] = (int)(((69069LL * MT[i-1]) + 1LL) & 0x00000000FFFFFFFFLL);
AAsterlund wrote: y := 32nd_bit_of(MT[ i ]) + last_31bits_of(MT[i+1])
y = ((MT[i] >> 31) & 0x0000001) + (MT[i+1] & 0x7FFFFFFF);
|
|
|
|
|
The answer to my question may be just an explaination why I can not declare a data array in a method that is part of a class library.
i.e.,
someMethod(int len) {
...
int *item = new int[len+1]; // fails - new is, here, and unresolved external
int *more = new int[8]; // a constant length doesn't help
/* Actual Error Message
ListMagic error LNK2001: unresolved external symbol "void * __cdecl operator new(unsigned int)" (??2@$$FYAPAXI@Z)
*/
classObj *okThink = new classObj(); // allowed - here, new exist again
...
}
How can I make this type of data declarations work, or, perhaps, have a reasonably close work-around? If it were a matter of location, I should have been able to declare it static and been OK (?), but none of the countless varitions I tried worked. I imagine the new operator behaviour is due to it's being an overload.
Thanks for any help, even if it's confirming I can't do what I want to do.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein
|
|
|
|
|
Hi,
I am making VC++.NET windows application. I made a configuration file (app.config) for my database server settings. But when I am trying to get setting from the file using “ConfigurationSettings” class I am getting NULL in it. Here is my code for that.
<code>NameValueCollection* configCol = ::ConfigurationSettings::AppSettings;</code>
Can I know what is the problem in this?
Thanks in advance,
Priyank
|
|
|
|
|
Since nobody has answered this question for long time, I want to have a try.
priyank_ldce wrote: NameValueCollection* configCol = ::ConfigurationSettings::AppSettings;
Doesn't this require mentioning some setting name, i.e.
NameValueCollection* configCol = ::ConfigurationSettings::AppSettings["someproperty"];
|
|
|
|
|
Hi, I was wondering what the purpose of the .pdb file that is automatically generated in my release build is? I'm sure it's for debugging purposes, so do I need it with my release build?
Thanks
|
|
|
|
|
I think this is pre-linker file. You can delete it When you release. Here it also generate .ilk file. Also safe to delete.
|
|
|
|
|
At least in Windows Forms application, the Release build generates the .pdb by default. It can be useful for development and testing purposes. You may control this feature in project properties at Configuration Properties / C/C++ / General / Debug Information Format.
|
|
|
|
|
|
I have a function that queries an Oracle DB. For some reason I receive two errors on each statement in my __finally block. Is there something wrong with my declarations?
Errors:
error C2065: 'myReader' : undeclared identifier
error C2227: left of '->Close' must point to class/struct/union/generic type
error C2065: 'myOracleConnection' : undeclared identifier
error C2227: left of '->Close' must point to class/struct/union/generic type
My code that generates the errors:
cPacket ^queryPacket(String ^cmd, String ^con)
{
//test if the passed arguments are empty
if(con->Equals(""))
{
MessageBox::Show("Oracle Connection String Empty o.O","Error in Form1::queryPacket");
}
if(cmd->Equals(""))
{
MessageBox::Show("Oracle Command String Empty o.O","Error in Form1::queryPacket");
}
try
{
OracleConnection ^myOracleConnection = gcnew OracleConnection(con);
OracleCommand ^myOracleCommand = gcnew OracleCommand(cmd, myOracleConnection);
myOracleConnection->Open();
OracleDataReader ^myReader = myOracleCommand->ExecuteReader(CommandBehavior::CloseConnection);
myReader->Close();//I put this in here to debug. The statement doesnt throw any errors and inteliSense picks up the myReader object so I'm assuming that it works fine.
}//end try
catch (Exception ^ex)
{
MessageBox::Show(ex->Message,"Exception in class PaCCaP's function queryPacket",
MessageBoxButtons::OK, MessageBoxIcon::Exclamation);
}//end catch
__finally
{
myReader->Close(); //this is where the first 2 errors are generated
myOracleConnection->Close(); //and the second 2
}//end finally
I'm hoping this is something small that I've overlooked, possibly in my declarations?
Also, It It's not too much to ask, How do you create a 1-dimensional array of objects in the 2005 syntax (I just switched over from 2003 and trackable ^ pointers are a bit fuzzy to me.
All suggestions are appreciated.
Thanks!
|
|
|
|
|
myReader and myOracleConnection go out of scope at the end of the try block. Declare them outside the try block.
System.IO.Path.IsPathRooted() does not behave as I would expect
|
|
|
|
|
cpp_and_asm wrote: How do you create a 1-dimensional array of objects in the 2005 syntax
I think this is it
array<Object^>^ myarray = gcnew array<Object^>(size goes here);
System.IO.Path.IsPathRooted() does not behave as I would expect
|
|
|
|
|
Thanks Alot Josh!!
|
|
|
|
|
|
This should do it
for( ;; )
{
cout << "I will not post in the wrong forum" << endl;
}
System.IO.Path.IsPathRooted() does not behave as I would expect
|
|
|
|
|
Dammit my solution was the hard way!
|
|
|
|
|
One way:
#if (_MANAGED == 1)
#pragma unmanaged
#endif
TCHAR str[50] = _T("how are you ?");
size_t index = _tcscspn(str, _T("@$#?"));
if (index < _tcslen(str))
else
#if (_MANAGED == 1)
#pragma managed
#endif or
#if (_MANAGED == 1)
#pragma unmanaged
#endif
char str[50] = "how are you ?";
size_t index = strcspn( str, "@$#?");
if (index < strlen(str))
else
#if (_MANAGED == 1)
#pragma managed
#endif
-- modified at 18:34 Monday 5th February, 2007
Fixed so my reply applies to this forum
|
|
|
|
|
As Josh pointed out ( sort of ), this is the C++/CLI forum, you wanted the Visual C++ forum
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
|
|
|
|
|
What's the deal with so many new nameless members?
|
|
|
|
|
Nishant Sivakumar wrote: What's the deal with so many new nameless members?
I would suspect it's an invasion of druids... if only their netiquette indicated that. :->
I long for the good old times when everyone introduced themselves with their real name, not the bb41854 -like garbage.
|
|
|
|
|
Sorry if this has been asked before, but the search feature is being pretty useless for me right now. Does anyone know of any good examples of creating Control/Component Designers in C++/CLI? I've tried converting a couple of C# or VB examples, but I always end up with "ControlDesigner base class undefined". Does this capability even exist in C++?
For a bit of context: I'm creating a custom Tab Control ("Custom" here meaning "from scratch") and want to allow it to be used like the standard .Net Tab Control while in design view, allowing you to switch tabs for editing, add new tab pages, etc. My understanding is that this is accomplished through Designers. This seems to be an unpopular subject, however, as all of my searches have turned up only the aformentioned (and regrettably sparse) C#/VB examples.
Thank you in advance for any help!
-Toji
|
|
|
|
|
You'll need to add a reference to system.design.dll, and then either specify the fully qualified name or add a using namespace for System.Design
|
|
|
|
|
Thank you! Can't believe I forgot something as silly and basic as a reference!
-Toji
|
|
|
|
|
hi,
i'm getting linker errors when using an unmanaged class inherited from another unmanaged class in my managed form class.
For each called function from the managed part it generates an error.
does anyone know what to do?
thanks in advance.
arjan
|
|
|
|
|
I think you forgot to link with the import library.
|
|
|
|