Tag: C#的

静态和共享库之间的区别?

静态库和共享库有什么区别? 我使用Eclipse,有几个项目types,包括静态库和共享库? 一个人比另一个人有优势吗?

这些(bCondition == NULL)和(NULL == bCondition)之间有什么区别?

在探索msdn网站时,大部分条件检查他们正在使用(NULL == bCondition)。 使用这些符号的目的是什么? 请提供一些样品来解释这些。 谢谢。

两个不同的值在相同的内存地址

码 #include <iostream> using namespace std; int main() { const int N = 22; int * pN = const_cast<int*>(&N); *pN = 33; cout << N << '\t' << &N << endl; cout << *pN << '\t' << pN << endl; } 产量 22 0x22ff74 33 0x22ff74 为什么在同一地址有两个不同的值?

如何使用ProgressBar更新正确实现BackgroundWorker?

– 更新 – 14/10也问了这个问题 给出一些清晰的想法,并考虑到这里的评论和这篇文章 我现在真正想要做的就是调用一个带有进度条的新窗体,让它运行和设置animation,而我的后台线程将我的长进程运行到数据库,然后调用一个closures窗体事件 后台工作人员在这里设置 public partial class MainWindow : Window { //Declare background workers BackgroundWorker bw = new BackgroundWorker(); BackgroundWorker bwLoadCSV = new BackgroundWorker(); BackgroundWorker bwProgressBar = new BackgroundWorker(); 然后代表在这里添加 public MainWindow() { bwLoadCSV.WorkerReportsProgress = true; bwLoadCSV.WorkerSupportsCancellation = true; bwLoadCSV.DoWork += new DoWorkEventHandler(bwLoadCSV_DoWork); bwLoadCSV.ProgressChanged += new ProgressChangedEventHandler(bwLoadCSV_ProgressChanged); bwLoadCSV.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bwLoadCSV_RunWorkerCompleted); 这个调用是从主窗口类来的 […]

dynamic内存访问只在函数内部起作用

此问题旨在用作此常见问题的规范副本: 我在一个函数内dynamic分配数据,一切正常,但只在分配发生的函数内。 当我尝试在函数外部使用相同的数据时,出现崩溃或其他意外的程序行为。 这是一个MCVE: #include <stdlib.h> #include <stdio.h> void print_array (int* data, int size) { for(int i=0; i<size; i++) { printf("%d ", data[i]); } printf("\n"); } void create_array (int* data, int size) { data = malloc(sizeof(*data) * size); for(int i=0; i<size; i++) { data[i] = i; } print_array(data, size); } int main (void) { int* […]

当我改变一个函数内的参数时,是否也改变了调用者?

我已经写了一个函数如下: void trans(double x,double y,double theta,double m,double n) { m=cos(theta)*x+sin(theta)*y; n=-sin(theta)*x+cos(theta)*y; } 如果我通过在同一个文件中调用它们 trans(center_x,center_y,angle,xc,yc); xc和yc的值会改变吗? 如果不是,我该怎么办?

静态variables链接错误

我在Mac上编写C ++代码。 编译时为什么会出现这个错误? 未定义的架构i386符号:“Log :: theString”,引用来自:libTest.a(Log.o)中的Log :: method(std :: string)ld:符号(s)not found for architecture i386叮当声:错误:链接器命令失败,退出代码1(使用-v查看调用) 不知道如果我的代码是错误的,或者我必须添加额外的标志Xcode。 我当前的XCodeconfiguration是“静态库”项目的默认configuration。 我的代码: Log.h ———— #include <iostream> #include <string> using namespace std; class Log{ public: static void method(string arg); private: static string theString ; }; Log.cpp —- #include "Log.h" #include <ostream> void Log::method(string arg){ theString = "hola"; cout << theString << […]

没有匹配的函数 – ifstream open()

这是错误代码的一部分: std::vector<int> loadNumbersFromFile(std::string name) { std::vector<int> numbers; std::ifstream file; file.open(name); // the error is here if(!file) { std::cout << "\nError\n\n"; exit(EXIT_FAILURE); } int current; while(file >> current) { numbers.push_back(current); file.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); } return numbers; } 而且,我也不知道发生了什么。 整个事情编译在VS. 不过,我需要用dev cpp编译这个。 我在上面的代码中注释掉了错误。 错误是: 没有匹配的函数调用“std :: basic_ifstream :: open(std :: string&) 没有匹配函数调用'std :: basic_ofstream :: open(std :: string&) […]

为什么在x86上自然alignment的variablesprimefaces上的整数赋值?

我一直在阅读这篇关于primefaces操作的文章 ,它提到了x86上的32位整数赋值是primefaces的,只要variables是自然alignment的。 为什么自然alignment确保primefaces性?

在scanf()格式的string中,尾随空白的效果是什么?

这段代码中scanf("%d")和scanf("%d ")之间有什么区别,区别在于格式化string中的尾部空格? #include <stdio.h> int main(void) { int i, j; printf("enter a value for j "); scanf("%d ",&j); printf("j is %d\n", j); printf("enter a value for i "); scanf("%d", &i); printf("i is %d\n", i); return 0; } scanf()函数在scanf("%d ", &j);这样的格式说明符之后加空格的时候实际上是如何工作的scanf("%d ", &j); ?