我对常数对象有疑问.在以下程序中:
class const_check{
int a;
public:
const_check(int i);
void print() const;
void print2();
};
const_check::const_check(int i):a(i) {}
void const_check::print() const {
int a=19;
cout<<"The value in a is:"<<a;
}
void const_check::print2() {
int a=10;
cout<<"The value in a is:"<<a;
}
int main(){
const_check b(5);
const const_check c(6);
b.print2();
c.print();
}
Run Code Online (Sandbox Code Playgroud)
void print()是类的常量成员函数const_check,因此根据常量的定义,任何更改尝试都会int a导致错误,但程序对我来说很好.我想我在这里有些困惑,任何人都可以告诉我为什么编译器没有将其标记为错误?
以下程序用%20替换所有空格.编译工作正常,但程序在运行时终止.任何帮助???
#include<iostream>
#include<string>
using namespace std;
void removeSpaces(string url){
int len=url.length();
int i,count=0;
while(i<=len){
if(url[i]==' ')
count++;
i++;
}
int length2=len+(count*2);
string newarr[length2];
for(int j=len-1;j>=0;j--){
if(url[j]==' ')
{
newarr[length2-1]='0';
newarr[length2-2]='2';
newarr[length2-3]='%';
length2=length2-3;
}
else
{
newarr[length2-1]=url[j];
length2=length2-1;
}
}
cout<<"\nThe number of spaces in the url is:"<<count;
cout<<"\nThe replaced url is:"<<newarr;
}
int main(){
string url="http://www.ya h o o.com/";
removeSpaces(url);
}
Run Code Online (Sandbox Code Playgroud) 谁能解释一下这个功能是如何工作的?
public int TestAdd(int a,int b) {
if(a <1)return b;
return(TestAdd((a&b)<<1,a^b));
}
Run Code Online (Sandbox Code Playgroud) 我有一个hashmap,每个键都有很多值(存储在arraylist中).如何显示arraylist,即java中hashmap中特定键的值?
为什么这个枚举无效?
enum Type{
MPEG-2=2,PASSED_PIDS_ID=3,DVB=4,ATSC=5,NA=6,UNDETERMINED=7
}
Run Code Online (Sandbox Code Playgroud) java ×7
c++ ×2
arrays ×1
const ×1
hashmap ×1
junit ×1
legacy-code ×1
sorting ×1
unit-testing ×1