c++-C++ 为什么同一段代码第一次提示左操作数必须为左值,改过运行之后再改回原来的,就不提示错误了。

问题描述

C++ 为什么同一段代码第一次提示左操作数必须为左值,改过运行之后再改回原来的,就不提示错误了。

选择排序
template
void selectSort(T a[],int size)
{
int i,j,k;
T tmp;
for(i=0;i<size-1;i++)
{
k=i;
for(j=i+1;j<size;j++)
{
if(a[j]<a[k])
k=j;
}
tmp=a[i];a[i]=a[k];
a[k]=tmp;
}
int main()
{...}
vs2010 第一次编译的时候,会出现error,说左操作数必须为左值,所有的tmp,a[i]的赋值语句都有
错误提示。实在没办法,我不用函数模板了,把template注释掉,T改成int型的,编译通过没有错误。
然后我又加上函数模板,int改回T,也就是完全变成开始的代码,编译也没错误了。
我又试着建了几个类似的项目,发生了同样的问题。这是怎么回事啊。

解决方案

那可能是vs的问题吧,你试试在他error的时候重新生成可不可以。

解决方案二:

这个应该是vs的延迟吧,我之前自己写代码也出现过找了1个小时的错误,后来重新打开vs发现就没有那个红色波浪线了

解决方案三:

这个应该是vs的延迟吧,我之前自己写代码也出现过找了1个小时的错误,后来重新打开vs发现就没有那个红色波浪线了

解决方案四:

写这种小的程序,用vc++完全没问题

时间: 2024-08-04 10:07:28

c++-C++ 为什么同一段代码第一次提示左操作数必须为左值,改过运行之后再改回原来的,就不提示错误了。的相关文章

select-这段代码可以改写成group by...having语句吗?如果能,怎么改?

问题描述 这段代码可以改写成group by...having语句吗?如果能,怎么改? SELECT empfname, empsalary FROM qemp WHERE empsalary < (SELECT .90*AVG(empsalary) FROM qemp); 解决方案 SELECT empfname, empsalary FROM qemp GROUP BY empsalary HAVING empsalary > 90*AVG(empsalary); 解决方案二: linq

代码提示出错-请问我这段代码哪里出错了,为什么总是异常,我是个新手

问题描述 请问我这段代码哪里出错了,为什么总是异常,我是个新手 package control; import javax.swing.JFrame public class DebugTest { public static void main(String[] args) { int[] ints= new int[20]; try { for (int i=0; i < 20; i ++) { ints[i] = i+1; Ststem.out.println(i+1); } } catc

r语言-请大家看看我这段代码有啥问题,为什么会提示“更换参数长度为零”?

问题描述 请大家看看我这段代码有啥问题,为什么会提示"更换参数长度为零"? pse=rep(0,Iter) psa=rep(0,Iter) for (j in c(1:Iter)) { P=rep(0, T) for (i in c(1:T)) { n=rnorm(1,0,1) temp = exp(r-0.5*(s)^2 + s*n) if(i>=2) P= P[i-1] * temp if(i==1) P=initPrice*temp } pse[j]=P[T] psa[j]

spring jdbc-用spring mvc模式写了一段代码,但一直都会提示404,不知道错误在哪,求指点。

问题描述 用spring mvc模式写了一段代码,但一直都会提示404,不知道错误在哪,求指点. 用springmvc 和spring jdbc谢了一段代码,但一直提示404错误,不知道该如何解决,已经困扰很多天了.(Dao中只写了增加,没有写service,只是想试一下能不能连接到数据库,customer只有id和name) web.xml文件内容如下: <?xml version="1.0" encoding="UTF-8"?> <web-ap

信息-请帮我看看这段代码有什么问题,提示查询语句出错。

问题描述 请帮我看看这段代码有什么问题,提示查询语句出错. <% set rs=server.CreateObject("ADODB.Recordset") dim temp ,I dim posid,posname, branch, manager, checktime,bz,mainpic,checkpic,checkquarter,group temp=request.Form("input") select case request.Form(&quo

c#代码-编译下面这段代码的时候,提示上下问不存在p1,为什么呢,要怎样修改才能通过呢?

问题描述 编译下面这段代码的时候,提示上下问不存在p1,为什么呢,要怎样修改才能通过呢? private void Window_Loaded_1(object sender, RoutedEventArgs e) { person p1 = new person(); p1.Age = 18; p1.Name = "Hello"; txtbName.DataContext = p1; txtbAge.DataContext = p1; } private void Age_Click

c语言-这段代码的问题请大神们告诉我一下吧~··· debug提示的问题我没懂。。。

问题描述 这段代码的问题请大神们告诉我一下吧~··· debug提示的问题我没懂... #include #include struct student { char name; int age; int no; struct student *next; }; main() { struct student create(void) { struct student *p1,*p2,*head; head = NULL; p1 = p2 = (struct student)malloc(siz

为何加了这段代码网页就提示出错,内行人帮我看看语句有没有错

问题描述 这段代码是做什么用的,帮我看看有没有哪里错的加入这段代码打开网页时IE左下角就提示出错<scripttype="text/javascript">functionMinMax_Callback(eObj){if(eObj.style.visibility==='hidden'){document.getElementById('maxLink').style.display='block';}else{document.getElementById('maxLin

html-为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除?

问题描述 为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除? <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>example</title> <style type="text/css"> p{ border: thin solid black; background: g